/*
 * Logger.h
 *
 *  Created on: 5/10/2014
 *      Author: gustavo
 */

#ifndef LOGGER_H_
#define LOGGER_H_

#include <iostream>
#include <fstream>
#include <string>
#include <cstdio>
#include <ctime>
#include <time.h>
#include <LockFile.h>
#include "LoggerLevels.h"

class Logger {

public:
	virtual ~Logger();
	static Logger* getInstance();
	void log(LoggerLevel l, const std::string&);
	void enabled(bool);

private:
	Logger();
	static Logger* loggerInstance;
	std::ofstream logFile;;
	static const std::string logPath;
	bool isEnabled;

};

#endif /* LOGGER_H_ */
